package com.club.football.service;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import com.club.football.dto.PageDto;
import com.club.football.dto.TeamSaveDto;
import com.club.football.entity.Team;
import com.club.football.req.TeamPageReq;
import com.club.football.utils.R;
import com.club.football.vo.TeamPageVo;
import com.club.football.vo.TeamVo;

/**
 * 球队服务
 *
 * @author 1
 * @date 2024/01/09
 */
public interface TeamService extends IService<Team> {
    /**
     * 球队保存
     *
     * @param teamSaveDto 球队将数据保存到
     * @return {@link R}<{@link String}>
     */
    R<String> teamSave(TeamSaveDto teamSaveDto);

    /**
     * 球队页面
     *
     * @param pageDto     页数到页
     * @param teamPageReq 球队页面请求
     * @return {@link R}<{@link Page}<{@link Team}>>
     */
    R<Page<TeamPageVo>> teamPage(PageDto<Team> pageDto, TeamPageReq teamPageReq);


    /**
     * 球队信息
     *
     * @param id ID
     * @return {@link R}<{@link TeamVo}>
     */
    R<TeamVo> teamInfo(Long id);
}
